home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / util / boot / Kickstop.lha / Kickstop / Kickstop.a < prev    next >
Text File  |  1999-01-03  |  2KB  |  114 lines

  1. ********************************************************************************
  2. *
  3. *    Program:    Kickstop
  4. *    Filename:    Kickstop.a
  5. *
  6. *    Usage:        Kickstop
  7. *
  8. *    Contents:    Eine neue Kickstart-Diskette wird gelden
  9. *
  10. *    Language:    68000 Assembler
  11. *
  12. *    Link-instr.:    Objects:   Qstartup.o Kickstop.o
  13. *            Libraries: amiga.lib amigavisions.lib
  14. *            Output:    Kickstop
  15. *
  16. *    Author:        Johannes R. Geiss
  17. *
  18. *    Copyright:    Amigavisions
  19. *
  20. *    History:    $HISTORY:
  21. *            1.2 (15-Oct-91) changed JRG
  22. *            1.1 (02-Jun-91) changed JRG
  23. *            1.0 (11-Jun-90) written JRG
  24. *
  25. *    Version:    $VER: Kickstop 1.2 (15-Oct-91)
  26. *
  27. ********************************************************************************
  28.  
  29.  
  30. *------ Includes
  31.     include 'exec/types.i'
  32.     include 'exec/execbase.i'
  33.     include 'xref.i'
  34.     include 'call.i'
  35.  
  36.  
  37. *------ Imports
  38.     XLIB    Disable
  39.     xref    Error
  40.     xref    OpenItu
  41.     xref    CloseItu
  42.     xref    _SysBase
  43.     xref    _exit
  44.  
  45.  
  46. *------ Exports
  47.     xdef    _main
  48.  
  49.  
  50. ********************************************************************************
  51.  
  52.     SECTION Kickstop
  53.  
  54. *------ Main procedure
  55. _main    bsr    OpenItu
  56.     tst.l    d0
  57.     beq.s    1$
  58.     move.l    d0,-(a7)
  59.     bsr    _exit
  60.  
  61. 1$    movea.l #Mess,a0
  62.     bsr    Error
  63.     tst.b    d0
  64.     bne    Exit2
  65.     CALLSYS Disable
  66.     move.l    #$03f000,ColdCapture(a6)
  67.     clr.w    d1
  68.     lea    SoftVer(a6),a0
  69.     lea    ChkSum(a6),a1
  70. Lab4    add.w  (a0)+,d1
  71.     cmpa.l    a0,a1
  72.     bne.s    Lab4
  73.     not.w    d1
  74.     move.w    d1,(a1)
  75.     movea.l #Prog,a0
  76.     movea.l #$03f000,a1
  77.     movea.l #Prog_e,a2
  78. Lab6    move.w    (a0)+,(a1)+
  79.     cmpa.l    a0,a2
  80.     bne.s    Lab6
  81.     move.l    $0080,d0
  82.     move.l    #Trap1,$0080
  83.     trap    #0
  84. Trap1    move.l    d0,$0080
  85.     jmp    $fc00d0
  86.  
  87. Prog    move.w    #$4e70,$fc0000
  88.     move.l    #$13fc0003,$fc0002
  89.     move.l    #$00bfe201,$fc0006
  90.     move.l    #$13fc0002,$fc000a
  91.     move.l    #$00bfe001,$fc000e
  92.     move.w    #$4ef9,$fc0012
  93.     move.l    #$00f801dc,$fc0014
  94.     move.l    #$fc0000,$0080
  95.     trap    #0
  96. Prog_e
  97.  
  98. Exit2    bsr    CloseItu
  99.     rts
  100.  
  101.  
  102. ********************************************************************************
  103.  
  104.     section DATA
  105.  
  106. *------ Datafield
  107. Mess    dc.b    $0a
  108.     dc.b    ' KICKSTOP:   Please load new KICKSTART - disk into drive',$0a
  109.     dc.b    '             df0 and hit the RIGHT mousebutton.',$0a,$0a
  110.     dc.b    '             To abort KICKSTOP hit the LEFT mousebutton.',$0a
  111.     dc.b    $0a,0
  112.  
  113.     END
  114.